Static Program Analysis for Recognizing Sorting Algorithms
نویسنده
چکیده
منابع مشابه
Using Decision Tree Classifiers in Source Code Analysis to Recognize Algorithms: An Experiment with Sorting Algorithms
We discuss algorithm recognition (AR) and present a method for recognizing algorithms automatically from Java source code. The method consists of two phases. In the first phase, the recognizable algorithms are converted into the vectors of characteristics, which are computed based on static analysis of program code, including various statistics of language constructs and analysis of Roles of Va...
متن کاملRecognizing Algorithms Using Language Constructs, Software Metrics and Roles of Variables: An Experiment with Sorting Algorithms
Program comprehension (PC) is a research field that has been extensively studied from different points of view, including human program understanding and mental models, automated program understanding, etc. In this paper, we discuss algorithm recognition (AR) as a subfield of PC and explain their relationship. We present a method for automatic AR from Java source code. The method is based on st...
متن کاملKoli Calling 2009 9 th International Conference on Computing Education Research
Automatic assessment tools are widely used in programming education to provide feedback for students on large courses and to reduce teachers’ grading workload. Current automatic assessment methods typically support analysis of correct functionality and structure of the target program and programming style. Additional features supported by some tools include analysis of the use of specific langu...
متن کاملBeacon- and Schema-Based Method for Recognizing Algorithms from Students’ Source Code
In this paper, we present a method for recognizing algorithms from students’ programming submissions coded in Java. The method is based on the concept of programming schemas and beacons. Schemas are high-level programming knowledge with detailed knowledge abstracted out, and beacons are statements that imply specific structures in a program. The method automatically searches for schemas from th...
متن کاملAnalyzing Sorting Algorithms in Resource Aware ML
Software development sometimes requires to statically predict the quantity of resources—such as memory and time—that is needed to execute a program. The difficulties of manual resource analysis led to extensive research on automatic methods for quantitative resource analysis. Recently we developed an automatic amortized analysis to compute polynomial resource bounds for first-order functional p...
متن کامل